package com.erji.common.mybatis.persistence;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.erji.common.mybatis.entity.SuperModel;
import org.apache.ibatis.annotations.Param;

import java.io.Serializable;
import java.util.Collection;
import java.util.Map;

public interface SuperMapper<T extends SuperModel> extends BaseMapper<T> {
    int physicalDeleteById(Serializable id);

    int physicalDeleteByMap(@Param("cm") Map<String, Object> columnMap);

    int physicalDelete(@Param("ew") Wrapper<T> wrapper);

    int physicalDeleteBatchIds(@Param("coll") Collection<? extends Serializable> idList);
}
